<html>
<head>
<title>yFiles Tutorial GraphML Extensions</title>
<link rel="stylesheet" type="text/css" href="../../../doc/graphml.css"/>
</head>

<body>

<h1>yFiles Tutorial GraphML Extensions</h1>

<table>
<tr>
<td><a href="GraphMLDemo.java">demo.yext.graphml.GraphMLDemo</a></td>
<td>Demonstrates the use of class GraphMLIOHandler. 
Demo files are located in the directory <code>demo/yext/graphml/resources/ygraph</code>.
</td>
</tr>
<tr>
  <td>
  <a href="BaseGraphSerializationDemo.java">demo.yext.graphml.BaseGraphSerializationDemo</a>
  </td>
  <td>
  Shows how to use the low-level functionality of the yFiles GraphML extension package 
  to read and write graphs of type y.base.Graph instead of y.view.Graph2D. 
  </td>
</tr>
<tr>
<td><a href="CustomGraphMLDemo.java">demo.yext.graphml.CustomGraphMLDemo</a></td>
<td>Demo to show the attribute extension of GraphML. It shows how simple
		attributes (i.e. Strings, doubles) of graph elements can be serialized.
Demo files are located in the directory <code>demo/yext/graphml/resources/custom</code>.
</td>
</tr>
<tr>
  <td>
  <a href="ComplexExtensionGraphMLDemo.java">demo.yext.graphml.ComplexExtensionGraphMLDemo</a>
  </td>
  <td>
  Another demo to show the attribute extension of GraphML. 
  It shows how complex attributes of graph elements can be serialized using class 
  <a href="ComplexExtensionGraphMLIOHandler.java">demo.yext.graphml.ComplexExtensionGraphMLIOHandler</a>, 
  a customized subclass of GraphMLIOHandler. 
</td>
</tr>
<tr>
  <td>
  <a href="CustomNodeRealizerSerializerDemo.java">demo.yext.graphml.CustomNodeRealizerSerializerDemo</a>
  </td>
  <td>
  Demonstrates how support for custom realizer implementations can be added to GraphML 
  by using so-called realizer serializers. 
  Class <a href="CustomNodeRealizerSerializer.java">demo.yext.graphml.CustomNodeRealizerSerializer</a>, 
  handles both encoding and parsing of the custom node realizer implementation 
  <a href="CustomNodeRealizer.java">demo.yext.graphml.CustomNodeRealizer</a>. 
</td>
</tr>

  <tr>
  <td><a href="DotnetCompatDemo.java">demo.yext.graphml.DotnetCompatDemo</a></td>
  <td>This demo shows how to import/export pure layout information in .NET GraphML format.
  </td>
  </tr>

  <tr>
  <td><a href="GraphMLIdDemo.java">demo.yext.graphml.GraphMLIdDemo</a></td>
  <td>This demo shows how to persist the values of core graphml id elements.
  </td>
  </tr>


<tr>
<td><a href="PostprocessorDemo.java">demo.yext.graphml.PostprocessorDemo</a></td>
<td>This demo centers around postprocessing actions that can be specified
within a GraphML file. These actions allow to process 
the parsed graph structure before it gets returned by the GraphML parser.
</td>
</tr>


<tr>
<td><a href="XMLXSLDemo.java">demo.yext.graphml.XMLXSLDemo</a></td>
<td>
This demo shows how XML files can be imported as
GraphML by means of an XSLT stylesheet. 
Sample stylesheets for the following XML data are provided:
<ul>
<li><a href="resources/xsl/ant2graphml.xsl">Ant build scripts</a></li>
<li><a href="resources/xsl/owl2graphml.xsl">OWL Web ontology data</a></li>
<li><a href="resources/xsl/xmltree2graphml.xsl">XML tree structure</a></li>
</ul>
</td>
</tr>

</table>
	
<h2>Running the Demos</h2>

<h3>On Windows Platforms</h3>
<p>
Open a console window and change to the <b>toplevel graphml directory</b>.
Then enter <br/><br/>
<tt>java -cp ".;&lt;YFILES>\y.jar;graphml.jar;lib\crimson.jar"
      &lt;FullyQualifiedDemoName> </tt> <br/><br/>
where
&lt;FullyQualifiedDemoName> is the fully qualified class name of
one of the demos above, e.g., demo.yext.graphml.GraphMLDemo, and &lt;YFILES>
is the path of the yFiles distribution.
When using a JDK with version number equal to or higher than 1.4,
lib/crimson.jar can be omitted.
</p>

<h3>On Unix Platforms</h3>
<p>
Open a console window and change to the <b>toplevel graphml directory</b>.
Then enter 
<br/><br/>
<tt>java -cp ".:&lt;YFILES>/y.jar:graphml.jar:lib/crimson.jar"
      &lt;FullyQualifiedDemoName> </tt> <br/><br/>
where
&lt;FullyQualifiedDemoName> is the fully qualified class name of
one of the demos above, e.g., demo.yext.graphml.GraphMLDemo, and &lt;YFILES>
is the path of the yFiles distribution.
When using a JDK with version number equal to or higher than 1.4,
lib/crimson.jar can be omitted.
</p>
<p class="copyright">Copyright &copy;2001-2009, yWorks GmbH. All rights reserved.</p>

</body>
</html>
